package linwen.wang.hello.entity;

import linwen.wang.hello.vo.UserVO;
import lombok.Data;
import java.sql.Date;

/**
 * @ClassName UserVO
 * @Description
 * @Author lin
 * @Date 2022/3/29 上午12:26
 * @Version V1.0
 */
@Data
public class UserEntity {
    private String id;
    private String userName;
    private Date birthday;
    private String sex;
    private String address;

    /**
     * 将实体类转换为用户视图对象
     *
     * 此方法主要用于将当前实体类的属性转换为UserVO对象此方法的存在意义在于
     * 提供一个简单的方式将实体类的数据转换为视图层需要的格式它通过使用builder模式
     * 来构建UserVO对象，并将实体类中的属性值复制到UserVO对象中
     *
     * @return UserVO对象，包含从实体类复制过来的属性值
     */
    public UserVO entity2UserVO(){
        return UserVO.builder()
                .id(this.id)
                .userName(this.userName)
                .birthday(this.birthday)
                .sex(this.sex)
                .address(this.address)
                .build();
    }

}
